using System;
using ns27;
using Triton.Game.Mono;

namespace Triton.Game.Mapping
{
	[Attribute38("HealthyGamingMgr")]
	public class HealthyGamingMgr : MonoBehaviour
	{
		public static float CAIS_MESSAGE_DISPLAY_TIME => MonoClass.smethod_6<float>(TritonHs.MainAssemblyPath, "", "HealthyGamingMgr", "CAIS_MESSAGE_DISPLAY_TIME");

		public static float CAIS_ACTIVE_MESSAGE_DISPLAY_TIME => MonoClass.smethod_6<float>(TritonHs.MainAssemblyPath, "", "HealthyGamingMgr", "CAIS_ACTIVE_MESSAGE_DISPLAY_TIME");

		public static float KOREA_MESSAGE_DISPLAY_TIME => MonoClass.smethod_6<float>(TritonHs.MainAssemblyPath, "", "HealthyGamingMgr", "KOREA_MESSAGE_DISPLAY_TIME");

		public static float CHECK_INTERVAL => MonoClass.smethod_6<float>(TritonHs.MainAssemblyPath, "", "HealthyGamingMgr", "CHECK_INTERVAL");

		public bool m_BattleNetReady => method_2<bool>("m_BattleNetReady");

		public string m_AccountCountry => method_4("m_AccountCountry");

		public bool m_NetworkDataReady => method_2<bool>("m_NetworkDataReady");

		public float m_NextCheckTime => method_2<float>("m_NextCheckTime");

		public float m_NextMessageDisplayTime => method_2<float>("m_NextMessageDisplayTime");

		public int m_PlayedMinutes => method_2<int>("m_PlayedMinutes");

		public int m_RestedMinutes => method_2<int>("m_RestedMinutes");

		public ulong m_SessionStartTime => method_2<ulong>("m_SessionStartTime");

		public bool m_DebugMode => method_2<bool>("m_DebugMode");

		public bool m_HealthyGamingArenaEnabled => method_2<bool>("m_HealthyGamingArenaEnabled");

		public static HealthyGamingMgr s_Instance => MonoClass.smethod_7<HealthyGamingMgr>(TritonHs.MainAssemblyPath, "", "HealthyGamingMgr", "s_Instance");

		public bool IsInitializationReady => method_11<bool>("get_IsInitializationReady", Array.Empty<object>());

		public HealthyGamingMgr(IntPtr address, string className)
			: base(address, className)
		{
		}

		public HealthyGamingMgr(IntPtr address)
			: this(address, "HealthyGamingMgr")
		{
		}

		public static HealthyGamingMgr Get()
		{
			return MonoClass.smethod_15<HealthyGamingMgr>(TritonHs.MainAssemblyPath, "", "HealthyGamingMgr", "Get", Array.Empty<object>());
		}

		public void Awake()
		{
			method_8("Awake");
		}

		public void Update()
		{
			method_8("Update");
		}

		public void OnDestroy()
		{
			method_8("OnDestroy");
		}

		public void OnLoggedIn()
		{
			method_8("OnLoggedIn");
		}

		public bool isArenaEnabled()
		{
			return method_11<bool>("isArenaEnabled", Array.Empty<object>());
		}

		public ulong GetSessionStartTime()
		{
			return method_11<ulong>("GetSessionStartTime", Array.Empty<object>());
		}

		public void WillReset()
		{
			method_8("WillReset");
		}

		public void OnReset()
		{
			method_8("OnReset");
		}

		public void OnFatalError(FatalErrorMessage message, object userData)
		{
			method_8("OnFatalError", message, userData);
		}

		public void StopCoroutinesAndResetState()
		{
			method_8("StopCoroutinesAndResetState");
		}

		public void KoreaRestrictions()
		{
			method_8("KoreaRestrictions");
		}

		public void ChinaRestrictions()
		{
			method_8("ChinaRestrictions");
		}

		public void ChinaRestrictions_LessThan3Hours(int minutesPlayed, int hours)
		{
			method_8("ChinaRestrictions_LessThan3Hours", minutesPlayed, hours);
		}

		public void ChinaRestrictions_3to5Hours(int minutesPlayed)
		{
			method_8("ChinaRestrictions_3to5Hours", minutesPlayed);
		}

		public void ChinaRestrictions_MoreThan5Hours(int minutesPlayed)
		{
			method_8("ChinaRestrictions_MoreThan5Hours", minutesPlayed);
		}

		public void ChinaRestrictions_LockoutFeatures(int minutesPlayed)
		{
			method_8("ChinaRestrictions_LockoutFeatures", minutesPlayed);
		}
	}
}
